// 导入数据库操作模块
const db = require('../db/index')

// 用这个包来生成 Token 字符串
const jwt = require('jsonwebtoken')

// 导入配置文件
const config = require('../config')
// 登录处理函数
exports.login = (req, res) => {
  const userinfo = req.body
  const sql = `select * from admin where account =? and password =?`
  db.query(sql, [userinfo.account, userinfo.password], (err, results) => {
    if (err) return res.cc(err)
    if (results.length !== 1) return res.cc('登录失败！')
    const admin = { ...results[0], password: '' }
    console.log(admin)
    // 对用户的信息进行加密，生成 Token 字符串
    const tokenStr = jwt.sign(admin, config.jwtSecretKey, { expiresIn: config.expiresIn })
    res.send({
      status: 0,
      message: '登录成功！',
      data: { ...admin },
      // 为了方便客户端使用 Token，在服务器端直接拼接上 Bearer 的前缀
      token: 'Bearer ' + tokenStr
    })
  })
}
